Video identification and analytical recognition system

ABSTRACT

An analytical recognition system includes a video camera, an antenna, and a data analytics module. The video camera is configured to capture video data. The antenna is configured to capture mobile communication device data. The data analytics module is configured to correlate the video data and the mobile communication device data to generate a profile of a person associated with the video data and the mobile communication device data. The profile has profile data including any one or a combination of the captured video data and the captured mobile communication data.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a continuation of U.S. patent applicationSer. No. 15/469,885, filed on Mar. 27, 2017, which is a continuation ofU.S. patent application Ser. No. 14/817,871 filed on Aug. 4, 2015, nowU.S. Pat. No. 9,762,865, which is a continuation-in-part of, and claimspriority to and the benefit of, U.S. patent application Ser. No.14/256,385 filed on Apr. 18, 2014, which claims priority to, and thebenefit of, U.S. Provisional Patent Application No. 61/813,942 filed onApr. 19, 2013. U.S. patent application Ser. No. 14/817,871 is also acontinuation-in-part of, and claims priority to and the benefit of, U.S.patent application Ser. No. 14/213,548 filed on Mar. 14, 2014, now U.S.Pat. No. 9,786,113, which claims priority to, and the benefit of, U.S.Provisional Patent Application No. 61/798,740 filed on Mar. 15, 2013.The entire contents of each of the foregoing applications are herebyincorporated by reference herein.

BACKGROUND 1. Technical Field

The following relates to video observation, surveillance andverification systems and methods of use. The specific application maywork in conjunction with surveillance systems, street cameras, personalvideo, in-store camera systems, parking lot camera systems, etc. and isconfigured to provide real time and/or post time data analysis of one ormore video streams.

2. Background of Related Art

Companies are continually trying to identify specific user behavior inorder to improve the throughput and efficiency of the company. Forexample, by understanding user behavior in the context of the retailindustry, companies can both improve product sales and reduce productshrinkage. Focusing on the latter, employee theft is one of the largestcomponents of retail inventory shrink. Therefore, companies are tryingto understand user behavior in order to reduce and ultimately eliminateinventory shrinkage.

Companies have utilized various methods to prevent employee shrinkage.Passive electronic devices attached to theft-prone items in retailstores are used to trigger alarms, although customers and/or employeesmay deactivate these devices before an item leaves the store. Someretailers conduct bag and/or cart inspections for both customers andemployees while other retailers have implemented loss prevention systemsthat incorporate video monitoring of POS transactions to identifytransactions that may have been conducted in violation of implementedprocedures. Most procedures and technologies focus on identifyingindividual occurrences instead of understanding the underlying userbehaviors that occur during these events. As such, companies are unableto address the underlying condition that allows individuals to committheft.

Surveillance systems, street camera systems, store camera systems,parking lot camera systems, and the like are widely used. In certaininstances, camera video is continually streaming and a buffer period of8, 12, 24, 48 hours, for example, is used and then overwritten should aneed not arise for the video. In other systems, a longer period of timemay be utilized or the buffer is weeks or months of data being storedand saved for particular purposes. As can be appreciated, when an eventoccurs, the video is available for review and analysis of the videodata. In some instances, the video stream captures data and analyzesvarious pre-determined scenarios based upon automatic, user input, orprogramming depending upon a particular purpose. For example, the videomay be programmed to follow moving objects from entry into a store andthroughout the store for inventory control and/or video monitoring ofcustomers.

In other instances, police, FBI or rescue personal need to review thevarious camera systems in a particular area or arena for investigativepurposes, e.g., to track suspects, for car accident review, or othervideo evidence necessary to their investigation. As is often the case,snippets of video from various camera systems throughout the area can becritical in piecing together a visual map of the event in question. Inother scenarios, an individual's habits or behaviors may becomesuspicious and deserved of monitoring or tracking for real-time analysisand alerts and/or post time investigative analysis.

There exists a need to further develop this analytical technology andprovide real time and post time analysis of video streams for securityand investigative purposes and for marketing purposes.

SUMMARY

According to an aspect of the present disclosure, an analyticalrecognition system is provided. The analytical recognition systemincludes a video camera, an antenna, and a data analytics module. Thevideo camera is configured to capture video data. The antenna isconfigured to capture mobile communication device data. The dataanalytics module is configured to correlate the video data and themobile communication device data to generate a profile of a personassociated with the video data and the mobile communication device data.The profile has profile data including any one or a combination of thecaptured video data and the captured mobile communication data.

In any one of the preceding aspects, the data analytics module isconfigured to determine any one or a combination of an arrival time ofthe person at a location and a departure time of the person at thelocation based on any one or a combination of the video data and themobile communication device data, and correlate the video data and themobile communication device data based on any one or a combination ofthe arrival time and the departure time.

In any one of the preceding aspects, the video camera is one of aplurality of video cameras included in the system and configured tocapture a plurality of video data, the antenna is one of a plurality ofantennae included in the system and configured to capture a plurality ofmobile communication device data. The data analytics module can befurther configured to correlate the plurality of video data and theplurality of mobile communication device data to generate a plurality ofprofiles of a plurality of people, respectively associated with theplurality of video data and the plurality of mobile communication devicedata

According to another aspect of the present disclosure, the plurality ofvideo cameras and the plurality of antennae are located at a pluralityof premises.

In another example aspect herein, the analytical recognition systemfurther includes a user interface configured to enable the plurality ofprofiles to be mined based on a user-inputted criterion.

According to yet a further aspect herein, at least one of the pluralityof the antennae is affixed to at least one of the plurality of the videocameras and at least one of the plurality of antennae is located remotefrom the plurality of cameras.

In any one of the preceding aspects, the profile can include any one ora combination of the captured video data, the captured mobilecommunication device data, temporal data associated with the capturedvideo data or the captured mobile communication device data, andlocation data associated with the captured video data or the capturedmobile communication device data. The captured video data can includeany one or a combination of a captured still image and video footage.The mobile communication device data can include any one or acombination of a WiFi identifier, a media access control (MAC)identifier, a Bluetooth identifier, a cellular identifier, a near fieldcommunication identifier, and a radio frequency identifier associatedwith a mobile communication device in communication with the antenna.The temporal data can include any one or a combination of a time thevideo data is captured and a time the mobile communication device datais captured. Tithe location data can include any one or a combination ofa location at which the video data is captured and a location at whichthe mobile communication device data is captured.

In any one of the preceding aspects, the data analytics module isfurther configured to add to the profile, based on the correlated videodata and mobile communication device data, any one or a combination of anumber of visits of the person to a premises and a frequency of visitsof the person to the premises.

In any one of the preceding aspects, the data analytics module isfurther configured to identify the person based on a comparison betweendata from a first source and any one or a combination of the capturedvideo data, the captured mobile communication device data, thecorrelated video data and mobile communication device data, and theprofile, wherein the first source includes any one or a combination of anon-government database, a government database, and one or morepreviously generated profiles.

In any one of the preceding aspects, the analytical recognition systemfurther includes an investigation module configured to receiveinvestigation criteria and mine any one or a combination of the videodata, the mobile communication device data, and the profile data basedon the criteria.

In a further aspect herein, the investigation criteria includes a timeframe, and wherein the investigation module is further configured togenerate a list of people whose presence was detected on a premisesduring the time frame.

According to another aspect of the present disclosure, the investigationmodule is further configured to determine a current location of theperson by detecting a signal that matches the mobile communicationdevice data obtained at a first location.

In any one of the preceding aspects, the antenna includes any one or acombination of a WiFi antenna, a media access control (MAC) antenna, aBluetooth antenna, a cellular antenna, a near field communicationantenna, and a radio frequency identification antenna.

In any one of the preceding aspects, the data analytics module isfurther configured to assign the person to a positive list, anundetermined list, or a negative list based on any one or a combinationof the video data, the mobile communication device data, the profiledata, and a user-inputted criteria.

According to another aspect of the present disclosure, the dataanalytics module is further configured to assign the person to thepositive list based on a determination that any one or a combination ofthe video data, the mobile communication device data, and the profilecorresponds to an employee or to a person on a predetermined list ofpeople.

In any one of the preceding aspects, the antenna is configured tocapture the mobile communication device data by wirelessly receivingdata from a mobile communication device located within a range of theantenna.

In any one of the preceding aspects, the data analytics module isfurther configured to detect a behavior of the person and store in theprofile behavioral data corresponding to the behavior.

According to another aspect of the present disclosure, the dataanalytics module is configured to detect the behavior of the person byextracting behavioral information from any one or a combination of thevideo data and the mobile communication device data. The behaviorincludes any one or a combination of looking in a direction, reachingfor an item of merchandise, purchasing the item of merchandise,traveling along a path at the premises, visiting an aisle or a locationat the premises, spending an amount of time at the premises, spending anamount of time at the location at the premises, and visiting thepremises on a number of separate instances.

In a further aspect herein, the data analytics module is configured toclassify the person as a new customer or a repeat customer at thepremises based on premises visit data stored in the profile, and add tothe profile, or update in the profile, an indicator of whether theperson is a new customer or a repeat customer at the premises.

According to another aspect herein, the data analytics module isconfigured to detect the behavior of the person by correlating any oneor a combination of the video data, the mobile communication devicedata, and the profile data with any one or a combination of a mapping ofaisle locations at a premises, a mapping of merchandise locations at thepremises, and a mapping of shelf locations at the premises.

In a further aspect herein, the analytical recognition system furtherincludes an investigation module configured to mine, based on reportcriteria, any one or a combination of the video data, the mobilecommunication device data, the profile data, and sales data. Theinvestigation module is further configured to generate a report based onthe mining of the any one or the combination of the video data, themobile communication device data, and the profile data. The reportincludes a sales close rate corresponding to any one or a combination ofan item of merchandise, a merchandise category, an aisle at thepremises, a shelf at the premises, or a predetermined location at thepremises.

According to another aspect herein, the data analytics module is furtherconfigured to generate, based on any one or a combination of the videodata and the mobile communication device data, location datacorresponding to the behavior, and store the location data in theprofile in association with the behavioral data.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a system block diagram of an embodiment of a videoobservation, surveillance and verification system in accordance with thepresent disclosure;

FIG. 2 is a data/video/image sequencer according to an embodiment of thepresent disclosure;

FIG. 3 is an illustration of an image map and an associated timelinegenerated by the sequencer of FIG. 2;

FIG. 4 is a schematic illustration of an analytical recognition systemused for object identification and tracking according to anotherembodiment of the present disclosure;

FIG. 5 is a schematic illustration of an analytical recognition systemused for convergence tracking according to another embodiment of thepresent disclosure;

FIG. 6 is a schematic illustration of an analytical recognition systemused for character trait recognition according to another embodiment ofthe present disclosure;

FIG. 7 is a schematic illustration of an analytical recognition systemused for a community surveillance network according to anotherembodiment of the present disclosure;

FIG. 8 is a screen-shot of an embodiment of an investigation moduledisplaying an investigation in accordance with the present disclosure;and

FIG. 9 is a flowchart of an analytical recognition method according toan example embodiment of the present disclosure.

DEFINITIONS

The following definitions are applicable throughout this disclosure(including above).

A “video camera” may refer to an apparatus for visual recording.Examples of a video camera may include one or more of the following: avideo imager and lens apparatus; a video camera; a digital video camera;a color camera; a monochrome camera; a camera; a camcorder; a PC camera;a webcam; an infrared (IR) video camera; a low-light video camera; athermal video camera; a closed-circuit television (CCTV) camera; apan/tilt/zoom (PTZ) camera; and a video sensing device. A video cameramay be positioned to perform observation of an area of interest.

“Video” may refer to the motion pictures obtained from a video camerarepresented in analog and/or digital form. Examples of video mayinclude: television; a movie; an image sequence from a video camera orother observer; an image sequence from a live feed; a computer-generatedimage sequence; an image sequence from a computer graphics engine; animage sequence from a storage device, such as a computer-readablemedium, a digital video disk (DVD), or a high-definition disk (HDD); animage sequence from an IEEE 1394-based interface; an image sequence froma video digitizer; or an image sequence from a network.

“Video data” is a visual portion of the video.

“Non-video data” is non-visual information extracted from the videodata.

A “video sequence” may refer to a selected portion of the video dataand/or the non-video data.

“Video processing” may refer to any manipulation and/or analysis ofvideo data, including, for example, compression, editing, and performingan algorithm that generates non-video data from the video.

A “frame” may refer to a particular image or other discrete unit withinvideo.

A “computer” may refer to one or more apparatus and/or one or moresystems that are capable of accepting a structured input, processing thestructured input according to prescribed rules, and producing results ofthe processing as output. Examples of a computer may include: acomputer; a stationary and/or portable computer; a computer having asingle processor, multiple processors, or multi-core processors, whichmay operate in parallel and/or not in parallel; a general purposecomputer; a supercomputer; a mainframe; a super mini-computer; amini-computer; a workstation; a micro-computer; a server; a client; aninteractive television; a web appliance; a telecommunications devicewith internet access; a hybrid combination of a computer and aninteractive television; a portable computer; a tablet personal computer(PC); a personal digital assistant 123 (PDA); a portable telephone;application-specific hardware to emulate a computer and/or software,such as, for example, a digital signal processor (DSP), afield-programmable gate array (FPGA), an application specific integratedcircuit (ASIC), an application specific instruction-set processor(ASIP), a chip, chips, or a chip set; a system on a chip (SoC), or amultiprocessor system-on-chip (MPSoC); an optical computer; a quantumcomputer; a biological computer; and an apparatus that may accept data,may process data in accordance with one or more stored softwareprograms, may generate results, and typically may include input, output,storage, arithmetic, logic, and control units.

“Software” may refer to prescribed rules to operate a computer. Examplesof software may include: software; code segments; instructions; applets;pre-compiled code; compiled code; interpreted code; computer programs;and programmed logic. In this description, the terms “software” and“code” may be applicable to software, firmware, or a combination ofsoftware and firmware.

A “computer-readable medium” may refer to any storage device used forstoring data accessible by a computer. Examples of a computer-readablemedium may include: a magnetic hard disk; a floppy disk; an opticaldisk, such as a CD-ROM and a DVD; a magnetic tape; a flash removablememory; a memory chip; and/or other types of media that may storemachine-readable instructions thereon. “Non-transitory”computer-readable medium include all computer-readable medium, with thesole exception being a transitory, propagating signal.

A “computer system” may refer to a system having one or more computers,where each computer may include a computer-readable medium embodyingsoftware to operate the computer. Examples of a computer system mayinclude: a distributed computer system for processing information viacomputer systems linked by a network; two or more computer systemsconnected together via a network for transmitting and/or receivinginformation between the computer systems; and one or more apparatusesand/or one or more systems that may accept data, may process data inaccordance with one or more stored software programs, may generateresults, and typically may include input, output, storage, arithmetic,logic, and control units.

A “network” may refer to a number of computers and associated devicesthat may be connected by communication facilities. A network may involvepermanent connections such as cables or temporary connections such asthose made through telephone or other communication links. A network mayfurther include hard-wired connections (e.g., coaxial cable, twistedpair, optical fiber, waveguides, etc.) and/or wireless connections(e.g., radio frequency waveforms, free-space optical waveforms, acousticwaveforms, etc.). Examples of a network may include: an internet, suchas the Internet; an intranet; a local area network (LAN); a wide areanetwork (WAN); and a combination of networks, such as an internet and anintranet. Exemplary networks may operate with any of a number ofprotocols, such as Internet protocol (IP), asynchronous transfer mode(ATM), and/or synchronous optical network (SONET), user datagramprotocol (UDP), IEEE 802.x, etc.

“Real time” analysis or analytics generally refers to processing realtime or “live” video and providing near instantaneous reports orwarnings of abnormal conditions (pre-programmed conditions), abnormalscenarios (loitering, convergence, separation of clothing articles orbackpacks, briefcases, groceries for abnormal time, etc.) or otherscenarios based on behavior of elements (customers, patrons, people incrowd, etc.) in one or multiple video streams.

“Post time” analysis or analytics generally refers to processing storedor saved video from a camera source (from a particular camera system(e.g., store, parking lot, street) or other video data (cell phone, homemovie, etc.)) and providing reports or warnings of abnormal conditions(post-programmed conditions), abnormal scenarios (loitering,convergence, separation of clothing articles or backpacks, briefcases,groceries for abnormal time, etc. or other scenarios based on behaviorof elements (customers, patrons, people in crowd, etc.) in one or morestored video streams.

“Mobile communication device data” generally refers to data transmittedby, and/or obtained from, a mobile communication device by way of awireless or wired communication protocol.

DETAILED DESCRIPTION

Particular embodiments of the present disclosure are describedhereinbelow with reference to the accompanying drawings; however, it isto be understood that the disclosed embodiments are merely examples ofthe disclosure, which may be embodied in various forms. Well-knownfunctions or constructions are not described in detail to avoidobscuring the present disclosure in unnecessary detail. Therefore,specific structural and functional details disclosed herein are not tobe interpreted as limiting, but merely as a basis for the claims and asa representative basis for teaching one skilled in the art to variouslyemploy the present disclosure in virtually any appropriately detailedstructure. In this description, as well as in the drawings,like-referenced numbers represent elements that may perform the same,similar, or equivalent functions.

Additionally, the present disclosure may be described herein in terms offunctional block components, code listings, optional selections, pagedisplays, and various processing steps. It should be appreciated thatsuch functional blocks may be realized by any number of hardware and/orsoftware components configured to perform the specified functions. Forexample, the present disclosure may employ various integrated circuitcomponents, e.g., memory elements, processing elements, logic elements,look-up tables, and the like, which may carry out a variety of functionsunder the control of one or more microprocessors or other controldevices.

Similarly, the software elements of the present disclosure may beimplemented with any programming or scripting language such as C, C++,C#, Java, COBOL, assembler, PERL, Python, PHP, or the like, with thevarious algorithms being implemented with any combination of datastructures, objects, processes, routines or other programming elements.The object code created may be executed on a variety of operatingsystems including, without limitation, Windows®, Macintosh OSX®, iOS®,Linux, and/or Android®.

Further, it should be noted that the present disclosure may employ anynumber of conventional techniques for data transmission, signaling, dataprocessing, network control, and the like. It should be appreciated thatthe particular implementations shown and described herein areillustrative of the disclosure and its best mode and are not intended tootherwise limit the scope of the present disclosure in any way. Examplesare presented herein which may include sample data items (e.g., names,dates, etc.) which are intended as examples and are not to be construedas limiting. Indeed, for the sake of brevity, conventional datanetworking, application development and other functional aspects of thesystems (and components of the individual operating components of thesystems) may not be described in detail herein. Furthermore, theconnecting lines shown in the various figures contained herein areintended to represent example functional relationships and/or physicalor virtual couplings between the various elements. It should be notedthat many alternative or additional functional relationships or physicalor virtual connections may be present in a practical electronic datacommunications system.

As will be appreciated by one of ordinary skill in the art, the presentdisclosure may be embodied as a method, a data processing system, adevice for data processing, and/or a computer program product.Accordingly, the present disclosure may take the form of an entirelysoftware embodiment, an entirely hardware embodiment, or an embodimentcombining aspects of both software and hardware. Furthermore, thepresent disclosure may take the form of a computer program product on acomputer-readable storage medium having computer-readable program codemeans embodied in the storage medium. Any suitable computer-readablestorage medium may be utilized, including hard disks, CD-ROM, DVD-ROM,optical storage devices, magnetic storage devices, semiconductor storagedevices (e.g., USB thumb drives) and/or the like.

In the discussion contained herein, the terms “user interface element”and/or “button” are understood to be non-limiting, and include otheruser interface elements such as, without limitation, a hyperlink,clickable image, and the like.

The present disclosure is described below with reference to blockdiagrams and flowchart illustrations of methods, apparatus (e.g.,systems), and computer program products according to various aspects ofthe disclosure. It will be understood that each functional block of theblock diagrams and the flowchart illustrations, and combinations offunctional blocks in the block diagrams and flowchart illustrations,respectively, can be implemented by computer program instructions. Thesecomputer program instructions may be loaded onto a general-purposecomputer, special purpose computer, mobile device or other programmabledata processing apparatus to produce a machine, such that theinstructions that execute on the computer or other programmable dataprocessing apparatus create means for implementing the functionsspecified in the flowchart block or blocks.

These computer program instructions may also be stored in acomputer-readable memory that can direct a computer or otherprogrammable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer-readablememory produce an article of manufacture including instruction meansthat implement the function specified in the flowchart block or blocks.The computer program instructions may also be loaded onto a computer orother programmable data processing apparatus to cause a series ofoperational steps to be performed on the computer or other programmableapparatus to produce a computer-implemented process such that theinstructions that execute on the computer or other programmableapparatus provide steps for implementing the functions specified in theflowchart block or blocks.

Accordingly, functional blocks of the block diagrams and flowchartillustrations support combinations of means for performing the specifiedfunctions, combinations of steps for performing the specified functions,and program instruction means for performing the specified functions. Itwill also be understood that each functional block of the block diagramsand flowchart illustrations, and combinations of functional blocks inthe block diagrams and flowchart illustrations, can be implemented byeither special purpose hardware-based computer systems that perform thespecified functions or steps, or suitable combinations of specialpurpose hardware and computer instructions.

One skilled in the art will also appreciate that, for security reasons,any databases, systems, or components of the present disclosure mayconsist of any combination of databases or components at a singlelocation or at multiple locations, wherein each database or systemincludes any of various suitable security features, such as firewalls,access codes, encryption, de-encryption, compression, decompression,and/or the like.

The scope of the disclosure should be determined by the appended claimsand their legal equivalents, rather than by the examples given herein.For example, the steps recited in any method claims may be executed inany order and are not limited to the order presented in the claims.Moreover, no element is essential to the practice of the disclosureunless specifically described herein as “critical” or “essential.”

With reference to FIG. 1, an analytical recognition system includingvideo observation, surveillance and verification according to anembodiment of this disclosure is shown as 100. System 100 is a networkvideo and data recorder that includes the ability to record video fromone or more cameras 110 (e.g., analog and/or IP camera) and other dataobtained by way of one or more antennae 150. Video cameras 110 connectto a computer 120 across a connection 130. Connection 130 may be ananalog connection that provides video to the computer 120, a digitalconnection that provides a network connection between the video camera110 and the computer 120, or the connection 130 may include an analogconnection and a digital connection.

Each video camera 110 connects to the computer 120 and a user interface122 to provide a user connection to the computer 120. The one or morevideo cameras 110 may each connect via individual connections and mayconnect through a common network connection, or through any combinationthereof.

The one or more antennae 150 may be affixed to, or included within, theone or more video cameras 110 or the computer 120, and/or may be locatedremote from the one or more video cameras 110 and the computer 120. Theone or more antennae 150 may be communicatively coupled to the computer120 by way of the connection 130 or may wirelessly communicate with thecomputer 120 by way of an antenna of the computer 120.

The one or more antennae 150 may be any one or a combination of varioustypes of antennae. Example types of the one or more antennae 150 includea WiFi antenna, a media access control (MAC) antenna, a Bluetoothantenna, a cellular antenna, a near field communication antenna, a radiofrequency identification (RFID) antenna, and a global positioning system(GPS) antenna. It should be understood that the example arrangement ofthe antennae 150 shown in FIG. 1 is provided for illustrative purposesonly, and other configurations of the antennae 150 are contemplated. Forinstance, a single camera 110 may include a plurality of antennae ofdifferent types.

As discussed in more detail herein, the one or more antennae 150 areconfigured to capture mobile communication device data from one or moremobile communication devices (e.g., smartphones) located within a rangeof the one or more antennae 150 and transmit the captured mobilecommunication device data to a data analytics module 140 for processingin accordance with various example embodiments herein. The antenna 150may be configured to capture the mobile communication device data bywirelessly receiving data transmitted by a mobile communication devicethat is located within a range of the antenna. The antenna 150 may beconfigured to wirelessly receive data from nearby mobile communicationdevices by periodically or continually pinging mobile communicationdevices and/or by being configured to periodically or continually listenfor and capture data transmitted by nearby mobile communication deviceswithout using pinging.

System 100 includes at least one data analytics module 140. A dataanalytics module 140 may reside in the computer 120 and/or in one ormore of the video cameras 110. Data analytics module 140 performsprocessing of the video and/or the mobile communication device data. Forinstance, data analytics module 140 performs one or more algorithms togenerate non-video data from video and/or from the mobile communicationdata. Non-video data includes non-video frame data that describescontent of individual frames such as, for example, objects identified ina frame, one or more properties of objects identified in a frame and oneor more properties related to a pre-defined portions of a frame.Non-video data may also include non-video temporal data that describestemporal content between two or more frames. Non-video temporal data maybe generated from video and/or the non-video frame data. Non-videotemporal data includes temporal data such as temporal properties of anobject identified in two or more frames and a temporal property of oneor more pre-defined portions of two or more frames. Non-video frame datamay include a count of objects identified (e.g., objects may includepeople and/or any portion thereof, inanimate objects, animals, vehiclesor a user defined and/or developed object) and one or more objectproperties (e.g., position of an object, position of any portion of anobject, dimensional properties of an object, dimensional properties ofportions and/or identified features of an object) and relationshipproperties (e.g., a first object position with respect to a secondobject), or any other object that may be identified in a frame. Objectsmay be identified as objects that appear in video or objects that havebeen removed from video. Objects may be identified as virtual objectsthat do not actually appear in video but which may be added forinvestigative purposes, training purposes, or other purposes.

In various example embodiments herein, the data analytics module 140 isconfigured to correlate video data and mobile communication device datacaptured by video cameras and antennae, respectively, to generate aprofile of a person associated with the video data and the mobilecommunication device data. The profile may include profile data, such asthe captured video data, the captured mobile communication data, and/orother types of data associated with the person (e.g., a name, a date ofbirth, a residential address, and/or the like).

The profile may include captured video data, captured mobilecommunication device data, temporal data associated with captured videoor mobile communication device data, and/or location data associatedwith the captured video or mobile communication device data. Thecaptured video data may include a captured still image and/or capturedvideo footage. The mobile communication device data may include a WiFiidentifier, a media access control (MAC) identifier, a Bluetoothidentifier, a cellular identifier, a near field communicationidentifier, and a radio frequency identifier and/or any other identifieror data associated with a mobile communication device in communicationwith the antenna. The temporal data may include a time at whichcorresponding video data is captured and/or a time at whichcorresponding mobile communication device data is captured. The locationdata may include a location at which video data is captured and/or alocation at which mobile communication device data is captured.

The data analytics module 140 may be configured to add to the profile,based on correlated video data and mobile communication device data, anumber of visits of the person to a premises and/or a frequency ofvisits of the person to the premises. The data analytics module 140 mayalso configured to compare data obtained from a first source (e.g., anon-government database, a government database, and one or morepreviously generated profiles) to the captured video data, the capturedmobile communication device data, the correlated video and mobilecommunication device data, and/or the profile, and identify the personbased on the comparison.

The data analytics module 140 may also be configured to determine, basedon the captured video and/or mobile communication device data, anarrival time and/or a departure time of the person at a particularpremises or location. The data analytics module 140 may correlate thevideo data and the mobile communication device data based on the arrivaltime and/or the departure time. This time-based correlation, forinstance, may enable the data analytics module 140 to associate aparticular item of mobile communication device data (e.g., a Wi-Fiidentifier) with a particular person captured on video.

In one example, the video camera 110 may be one of multiple videocameras 110 included in the system 100, and the video cameras 110 may beconfigured to capture multiple sets of video data, respectively.Likewise, the antenna 150 may be one of multiple antennae 150 includedin the system, and the multiple antennae 150 may be configured tocapture multiple sets of mobile communication device data, respectively.The data analytics module 140 may also be configured to correlate themultiple sets of video data and mobile communication device data togenerate respective profiles for multiple people who are associated withthe respective video data and mobile communication device data. Thevideo cameras and antennae may be located at a plurality of differentlocations and/or premises.

In another example, the data analytics module 140 may be configured toassign a person to a positive list, an undetermined list, or a negativelist based on the video data, the mobile communication device data, theprofile data, and/or user-inputted criteria (e.g., inputted via theinvestigation module 800, described below). The data analytics module140 may also be configured to determine that the video data, the mobilecommunication device data, and/or the profile corresponds to an employeeor to a person on a predetermined list of people, and may assign theperson to the positive list based on that determination.

In some example embodiments herein, the data analytics module 140 may beconfigured to detect a behavior of the person and store in the profilebehavioral data corresponding to the behavior. The data analytics module140 may, for instance, be configured to detect the behavior of theperson by extracting behavioral information from the video data and/orthe mobile communication device data. The behavior may include theperson looking in a particular direction, reaching for an item ofmerchandise, purchasing the item of merchandise, traveling along a pathat the premises, visiting an aisle or a location at the premises,spending an amount of time at the premises, spending an amount of timeat the location at the premises, and/or visiting the premises on anumber of separate instances. The data analytics module 140 may furtherbe configured to classify the person as a new customer or a repeatcustomer at the premises based on premises visit data stored in theprofile. The data analytics module 140 may add to the profile, or updatein the profile, an indicator of whether the person is a new customer ora repeat customer at the premises. The data analytics module 140, insome cases, may be configured to detect the behavior of the person bycorrelating the video data, the mobile communication device data, and/orthe profile data with a mapping of aisle locations at a premises, amapping of merchandise locations at the premises, and/or a mapping ofshelf locations at the premises.

In some example aspects herein, the data analytics module 140 may beconfigured to generate, based on captured video and/or mobilecommunication device data, location data corresponding to the particularbehavior, and store the location data in the profile in association withthe corresponding behavioral data.

Data analytics module 140 may be positioned in camera 110 to convertvideo-to-video data and non-video data and to provide the video data andthe non-video data to the computer 120 over a network. As such, thesystem 100 distributes the video processing to the edge of the networkthereby minimizing the amount of processing required to be performed bythe computer 120.

Computer 120 includes computer-readable medium comprising software formonitoring user behavior, which software, when executed by a computer120, causes the computer 120 to perform operations. User interface 122provides an interface to the computer 120. User interface 122 mayconnect directly to the computer 120 or connect indirectly to thecomputer 120 through a user network. The system user interface 122 mayalso be configured to receive one or more criteria from a user and mayenable profiles to be mined based on the criteria. In some exampleembodiments herein, the user interface 122 may host an investigationmodule 800, as described in further detail below.

A user behavior is defined by an action, an inaction, a movement, aplurality of event occurrences, a temporal event, an externallygenerated event, or any combination thereof. A particular user behavioris defined and provided to the computer 120.

An action may include picking up an object wherein the object has beenplaced or left at a particular location. An action may include moving aparticular object such as the opening of a door, drawer or compartment.An action may include positioning (or repositioning) a body part such asplacing a hand in a pocket or patting oneself repeatedly at a particularlocation (an indication that a weapon may be concealed). The action mayinclude moving to a particular position, a first individual engaging asecond individual and/or moving a hand, arm, leg and/or foot in aparticular motion. An action may also include positioning a head in aparticular direction, such as, for example, looking directly at securitypersonnel or a security camera 110. Various other examples have beendiscussed hereinabove.

Inaction may include failing to reach for an object wherein an object isdropped or positioned and the individual (e.g., object) does notretrieve the dropped object. Inaction may also include failing to walkto a particular location or failure to perform a particular task. Forexample, confirming that a security door is locked would require theaction of approaching the door and the action of striking the door toensure that it would not open. As such, the user behavior may be definedas the inaction of approaching the door and/or the inaction of strikingthe door to confirm that the door will not open. Various other examplesof inaction have been discussed hereinabove.

A temporal event may include the identification of a customer thatabruptly leaves a store, an individual dwelling at a store entrance orexit, an individual remaining in a particular location for a time periodexceeding a threshold. Various other examples of a temporal event havebeen discussed hereinabove.

A user may identify a particular user behavior and provide and/or definecharacteristics of the particular user behavior in the computer 120.Computer 120 receives non-video data from the camera 110 wherein thenon-video data includes behavioral information data. The particular userbehavior may be defined by a model 143 of the behavior where the model143 includes one or more attribute such a size, shape, length, width,aspect ratio or any other suitable identifying or identifiable attribute(e.g., tattoo or other various examples discussed herein). The computer120 includes a matching algorithm or matching module 141, such as acomparator, that compares the defined characteristics and/or the model143 of the particular user behavior with user behavior in the definednon-video data. Indication of a match by the matching algorithm ormodule 141 generates an investigation wherein the investigation includesthe video data and/or non-video data identified by the matchingalgorithm 141. Investigations are a collection of data related to anidentified event, and generally document behaviors of interest. As such,investigations require further review and investigation to understandthe particular behavior.

The investigation may be sent to other cameras or systems on a givennetwork or provided over a community of networks to scan for a match oridentify and alert. Matching algorithm 141 may be configured as anindependent module or incorporated into the data analytics module 140 inthe computer 120 or in any cameras 110. The data analytics module 140may also include a comparator module 142 configured to compare the model143 of the particular user behavior and the non-video data.

A particular user behavior may be defined as positioning a head towardan observation camera 110 exceeds a preset period or positioning of ahead directly toward a manager's office exceeds a preset period. Thisparticular user behavior is indicative of a customer trying to identifythe observation cameras 110 in a store in an effort to prevent beingdetected during a theft or an employee trying to determine if a manageris observing his/her behavior. The data analytics module 140 performs analgorithm to generate non-video data that identifies the head positionof objects. The video analytic module 140 may also provide a vectorindicating the facial and/or eye direction. The matching algorithm 141searches the non-video data to determine if the head position and/orvector indicating facial direction exceeds the preset period. A matchresults in the generation of an investigation.

With reference to FIG. 2, a data/video/image sequencer according to anembodiment of this disclosure is shown as 200. Sequencer 200 isconfigured to receive video, video data, non-video data, videosequences, still images, and/or mobile communication device data fromvarious sources of video (e.g., various of the one or more video cameras110) and/or from various of the one or more antennae 150. For example,continuous video may be provided from locations 1 and 2, while motiononly data may be provided from location 7. Video clips of short durationmay be provided from locations 3 and 6 and still images may be providedfrom locations 4 and 5. Mobile communication device data may be providedfrom locations 1 through 7. This data may be communicated to thesequencer 200 by any suitable communications medium (e.g., LAN, WAN,Intranet, Internet, hardwire, modem connection, wireless, etc.). Asshown in FIG. 2, data from each location may be communicated in anysuitable manner, such as for instance, continuously, periodically at apredetermined rate, asynchronously, in response to receipt of a trigger,and the like.

Sequencer 200 generates a time-stamp from data provided with the videodata, image data, and/or mobile communication device data. Thetime-stamp may be embedded into the video data, image data, and/ormobile communication device data, provided as part of the video data,image data, and/or mobile communication device data, or a time-stamp maybe provided with the file containing the video data, image data, and/ormobile communication device data. Alternatively, sequencer 200 may beconfigured to receive user-entered data, included time-stampinformation, associated with each input.

Sequencer 200 may additionally, or alternatively, generate ageo-location from the data provided with the video data, image data,and/or mobile communication device data. Geo-location information may beembedded into the video data, image data, and/or mobile communicationdevice data, provided as part of the video data, image data, and/ormobile communication device data, or provided with the file containingthe video data, image data, and/or mobile communication device data. Forexample, video, image, and/or mobile communication device data maycontain a land-marking feature that may be used to identify the locationwhere the picture was taken.

Sequencer 200 may additionally, or alternatively, generate field-of-viewdata (hereinafter “FOV data”) for video data and/or image data. FOV datamay be obtained from the camera location information, obtained from theinformation contained within the video (e.g., landmark identification)and/or entered by a user. Sequencer 200 may additionally, oralternatively, generate antenna range data for mobile communicationdevice data. Antenna range data may be obtained from locationinformation of the antenna 150, obtained from information containedwithin the mobile communication device data, and/or entered by a user.

FIG. 3 is an illustration of an image map 300 and an associated timeline310 generated by the sequencer 200. Sequencer 200 may be configured toutilize the time-stamp data, geo-location data, FOV data, and/or antennarange data to assemble an image map 300 and timeline 310 from all videodata, image data, and/or mobile communication device data (or anyportions thereof) provided to the sequencer 200.

A user may provide the sequencer 200 with a particular time and/ortimeframe and the sequencer 200 provides all video, images, and/ormobile communication device data related to that particular time. Timeand/or timeframe may be selected on the timeline 310 and the image map300 may be updated to include all video data, image data, and/or mobilecommunication device data related to the selected time and/or timeframe.

A user may additionally, or alternatively, provide the sequencer 200with a selected location and the sequencer provides all video data,image data, and/or mobile communication device data related to thatparticular location. Selected locations may be selected on the image map300 or provided as geo-location data to the sequencer 200.

A user may additionally, or alternatively, provide the sequencer 200with a particular time and/or timeframe in addition to a geo-location tofurther narrow and isolate all video data, image data, and/or mobilecommunication device data related to that particular location.

After a particular time, timeframe and/or geo-location is used toidentify video data, image data, and/or mobile communication devicedata, the user may utilize the searching algorithms, methods and systemdescribed herein to identify particular items of interest, patternsand/or individuals contained within the video data, image data, and/ormobile communication device data.

The present disclosure goes beyond facial recognition software (whichmay be utilized in conjunction herewith) and provides additionalalgorithms and analytics for tracking and/or investigative purposes asexplained below. In addition, it is not necessary in certain instancesthat facial recognition be utilized to flag or track someone orsomething and the presently-described system may be employed withoutfacial recognition software or algorithms which may prove insensitive tocertain moral, federal or local laws.

The present disclosure also relates to an analytical recognition systemfor real time/post time object tracking based on pre-programmedparameters, e.g., real time and post time analysis, recognition,tracking of various pre-programmed (or post programmed) known objects ormanually programmed objects based on shape, color, size, number ofcertain objects on a person(s), oddity for a particular circumstance(e.g., winter coat in 80° heat), similarity of particular object overthe course of a particular time frame (similar items, e.g., backpacks,within particular area), separation of a sensitive object(s) from personfor a preset period of time, odd object in particular area, objectsplaced near sensitive objects, similar objects being placed in similarareas and separated from person, particular color contrasts andcombinations (e.g., red shirt exposed under black shirt, or white hat onblack hair).

Programmed objects may include objects with a particular known shape,size color or weight (as determined by number of people carrying, gaitof person carrying, how the object is being carried, etc.) or based upona look up library of objects and mapping algorithm. These objects may bepre-programmed into the analytical software and tracked in real timeand/or post time for analysis. Manually programmed objects may beinputted into the software by color, size, shape, weight, etc. andanalyzed and tracked in real time and/or post time to determine abnormalconditions or for other purposes. Manually programmed objects may beuploaded for analysis in real time, e.g., facial recognition images,tattoos, piercings, logos, or other indicia as explained in more detailbelow. Additionally, a user generated item and/or image may be generatedfrom video data (e.g., frame data) and/or a still image and provided foranalytics. For example and as shown in the an analytical recognitionsystem 400 of FIG. 4, an object 410 (e.g., hat, backpack, outfit, or anyidentifiable feature) identified in a still image and/or a video frame(or identified as a result of one of the abnormal conditions describedherein) may be isolated from an individual 405 for a preset amount oftime (temporal event) and provided as a user generated item 410′ foridentification in live-video 420 or searched and identified in storedvideo 425, e.g., video frames and/or still images.

The person 405 may possess a mobile communication device 440 (e.g., asmartphone) equipped with one or more antennae (not shown in FIG. 4) bywhich one or more signals (e.g., mobile communication device data) arewirelessly transmitted. Examples of such mobile communication devicedata include signals (e.g., handshaking signals) that the mobilecommunication device 440 transmits in accordance with one or morewireless communication protocols, such as a WiFi communication protocol,a media access control (MAC)-based communication protocol, a Bluetoothprotocol, a cellular protocol, a near field communication protocol, anda radio frequency identification protocol. As discussed above, the oneor more antennae 150 are configured to capture the mobile communicationdevice data transmitted by the mobile communication device when it islocated within a range of the one or more antennae 150 and transmit thecaptured mobile communication device data to the data analytics module140 for processing in accordance with various example embodimentsherein.

System 400 may include data analytics module 140 that is configured toperform real time and/or post time analysis of video and non-video data(e.g., mobile communication device data) and tracking of every personwith a backpack 410 within a particular area or within a particularcamera view. Suspicious behavior and/or behavior of interest of one ormore persons may be tracked and recorded and analyzed in either realtime or post time. For example as identified in FIG. 4, if the backpack410 is separated from a person 405 and left for a predetermined periodof time, this video may be flagged for real time alerts and/or post timeanalysis. The object, e.g., backpack 410, might be flagged, time stampedand/or separated into an individual video stream for analysis later. Auser in real time or post time analysis can zoom in for high-definitiontracking or for incorporation into a data/video/image sequencer 200 asdiscussed herein. The person 405 dropping a preprogrammed suspiciousobject, e.g., backpack 410 (or any other object that is recognized by alibrary of images 430, user generated image/object 435 (via an inputdevice) or a certain mapping algorithm or module 140) may be tracked andanalyzed for real time alerts and/or post time analysis. The system 400may both track the object 410 and flag and track the person 405 for realtime or post time analysis through one or more cameras 110, a network ofcameras 110, 110 a, 110 b, one or more antennae 150, and/or a network ofantennae 150, etc.

In another example, the system 400 may flag and track in real time foralert purposes or post time analysis a person wearing a winter coat inthe summer, a long raincoat when sunny, etc. This would also beclassified as an alert or abnormal condition.

The system 400 may be capable of combining pre-programmed analytics toalert for one or more (or a combination of) abnormal scenarios. Forexample, a person carrying a case capable of carrying an semi-automaticor automatic rifle and that person loitering outside of a sensitivebuilding for a pre-determined period of time may be automaticallyflagged, tracked and an alert sent to security.

The system 400 may be capable of tracking and analyzing particularobjects and the software or data analytics module 140 may bepre-programmed to identify the same objects in later obtained videostreams and/or still images. For example, a person of particularimportance is scheduled to have a press briefing or scheduled to arriveat a particular location at a specific time. The scheduled event ispostponed (intentionally or unintentionally). The software or dataanalytics module 140 may be preprogrammed to recognize certain objects(or persons with objects 410 or user generated objects 435) appearing innewly generated video for the re-scheduled event. In certain instances,the original video from the original time of the scheduled event may bereviewed and a user may pre-program the software or data analyticsmodule 140 to look for certain “repeat” objects 410 (backpacks, coats,hats, clothing, briefcases, persons, etc.) in the real time videofootage of the now re-scheduled event. A person may also be classifiedas a loiterer and flagged for review at the later scheduled event. Awarning can be sent to the security team reviewing the tapes in realtime if that was a person of interest.

The data analytics module 140 may be configured to recognize abnormalpatterns of behavior or unexpected patterns of behavior and alertsecurity or investigators of potentially abnormal scenarios, events orconditions. The video and/or data may be configured for real-timeanalytics or post event analysis. For example, the data analytics module140 can be programmed to recognize convergence patterns toward aparticular geographical area and/or divergence patterns away from aparticular geographical area. Global positioning software and vectoringmay be utilized to accomplish this purpose. Recognition of convergentpatterns and/or divergent patterns may be helpful in automaticallyrecognizing potential flash mobs, mass robberies or other abnormalevents. For example and as shown in FIG. 5, analytical recognitionsystem 500 includes data analytics module 140 which may be configured totrack an abnormal number of patrons 504 a-5041 arriving at a particularlocation 520 at or near a particular time 522. The data analytics module140 may also be configured to track abnormal velocity of patrons 504a-5041 and/or individuals arriving or departing from a particularlocation 520. A typical arrival and/or departure velocity may be presetor obtained from an algorithm of previous individuals that may havearrived or departed from a particular location over a preset or variableamount of time. Deviation from the arrival and/or departure velocity maytrigger an abnormal condition.

Although not explicitly shown in FIG. 5, one or more of the people 504may possess one or more corresponding mobile communication devices 440(e.g., smartphones) equipped with one or more antennae by which one ormore signals (e.g., mobile communication device data) are wirelesslytransmitted. As discussed above, the one or more antennae 150 areconfigured to capture the mobile communication device data transmittedby the mobile communication devices 440 when they are located within therespective ranges of the one or more antennae 150 and transmit thecaptured mobile communication device data to the data analytics module140 for processing in accordance with various example embodimentsherein.

A security system 500 with the data analytics module 140 and one or morecamera arrays or systems 510 a-510 g may be configured to recognize anabnormal number of people converging towards a particular geographicalarea 520 over a preset time. The data analytics module 140 may beconfigured to utilize vector analysis and/or image and data vectoranalysis algorithms and/or machine learning algorithms to assess one ormore convergence patterns. Moreover, the system 500 may be configured torecognize similarities in clothing, age, articles being carried (e.g.,briefcases, backpacks, other similar items) and alert security orinvestigators of a possible abnormal condition. This can be useful inrecognizing so-called “flash mobs” or other highly sensitive situationsduring a parade, marathon, political speech, etc.

Divergence patterns and/or velocities may be used to identify unusualpatterns of individuals departing from a particular area 520. Forexample, in the event of a panic-like situation the divergence velocityof individuals is expected to be greater than a preset or calculatedaverage divergence velocity. As such, identification of one or moreindividuals leaving the particular area and/or situation at a velocityless than the average velocity or the panic-like velocity may indicatethat the individual was not in a panic-like condition possibly due tothe fact that he/she perpetrated or were aware of the particularpanic-like situation. Moreover a person leaving an area with a higherthan average velocity may be “running from an event”, e.g., running froma robbery or away from an upcoming explosion.

The data analytics module 140 may also be configured to monitor webtraffic and/or social media sites (Facebook®, MySpace®, LinkedIn®)relating to a particular location and/or event and provide alerts ofthat nature to security or combine web traffic relating to an event orgeographic area with video analytics that recognize convergence patternsto alert of a potential flash mob or gang robbery. The data analyticsmodule 140 may also work in reverse and access web traffic or varioussocial media sites when a convergence pattern is recognized and ping oneor more of these sites to gather additional information to possiblyuncover more pattern activity or uncover a flash mob event at aparticular location.

The data analytics module 140 may also be configured to monitor webtraffic or social media sites for activities that precede a particulartime stamp. For example, a social media posting conveys condolences fora particular event that coincides or precedes the particular event mayindicate foreshadowing of the event and indicate prior knowledge of theupcoming event.

The system 500 and data analytics module 140 may be configured toanalyze video and/or mobile communication device data from one or morestreet cameras, parking lot cameras, store/mall camera, or other camerasystems 510 a-510 g to determine pre-programmed abnormal conditions ormanually programmed conditions in real time. The system 500 may beconfigured to provide an alert if an abnormal number of cars areconverging at a particular spot (e.g., shopping mall), and couple thatinformation with footage from the parking lot surveillance cameras toascertain how many people are converging on a particular store or placeand couple that analytic with the in-store camera to determine loiteringat a particular spot at a particular time or delta time. This is typicalbehavior of a flash mob or gang robbery. Again, the system 500 might tieinto one or more social media sites for additional information and/orconfirmation.

Similarly, the velocity patterns of the approaching cars, obtained fromvideo and/or mobile communication device data, and/or the velocity atwhich individuals depart from their cars may also be indicative ofabnormal condition.

Other examples of analytics that the data analytics module 140 mayperform in real time and/or post time may relate to gang-typerecognition. For example, the analytical recognition system 600 of FIG.6 may be configured to recognize gang colors and/or color combinationsand/or patterns and flag the video 618 and/or alert security if anabnormal number of individuals (or abnormal % of individuals) withparticular colors or color combinations and/or patterns are convergingon, or loitering in, a particular geographical area. The data analyticsmodule 140 may be pre-programmed to recognize a particularcharacteristic or trait 615 of an individual or individuals 605 a, e.g.,clothing, head gear, pant style, shirt/coat colors, the manner it isworn, symbols, coat logos, tattoos, piercings, hair style, handgestures, cars, motorbikes, etc. and alert security of an abnormalcondition or a previous investigation stored as a previous image 625 ina computer 620. Alternatively, and/or additionally, the data analyticsmodule 140 may be pre-programmed to recognize mobile communicationdevice data (e.g., a cellular identifier) of a mobile communicationdevice 440 a of an individual 605 a, and alert security of the presenceof the individual 605 a who may be a known person of interest. Theseindividuals 605 a may be flagged and tracked for a preset period of timeor until he/she leaves the area. The overall image and characteristics615 of a particular group of patrons in a crowd (similarities of colors,uniform, gear, clothing style, hair style, logos, piercings, tattoos,symbols, other gang-related indicia, cars, motorbikes or clothing, etc.)may be recognized and trigger an alert. The data analytics module 140may provide an alert that x % of individuals in a particular crowd havea particular trait 615, e.g., same tattoo, red shirts on, have the samelogo, hair style are carrying a specific object, etc. The data analyticsmodule 140 may be configured to provide an alert based on an assessmentthat a predetermined number of individuals in a particular crowd have aparticular trait 615.

The data analytics module 140 may be configured to provide graphicalrepresentations of numerous abnormal conditions to better facilitaterecognition of patterns or very high levels (and/or predeterminedlevels) of one or more abnormal conditions. This may allow a highernumber of patterns to be tracked and analyzed by one or moreindividuals. The data analytics module 140 may also recognize contactbetween individuals wherein the contact may be physical contact (e.g.,handshake, an embrace or exchange of an object) or contact may benon-contact (e.g., engage in conversation, prolonged eye-contact orengaging in other non-physical contact that would indicateacknowledgement therebetween).

Other alert-type conditions may relate to abnormal scenarios wherein thedata analytics module 140 recognizes an object being carried by anindividual 605 b that is unusual for a particular area. For example asshown in FIG. 6, a person carrying a pitchfork or shovel (not shown) ina mall 623, or a group (605 b and 605 c) carrying bats 616 in mall 623and converging on a particular area. Again, real-time analysis of thevideo would be most useful and provide security with an abnormalcondition alert. Post analysis may be helpful for determining offendersshould an event take place when authorities are called to assist.

With any of the aforedescribed scenarios or alerts noted herein, thedata analytics module 140 may work in conjunction with a video libraryof images or algorithms 650 and/or with one or more databases ofaggregated mobile communication device data to trigger alerts or respondto queries. Additional images, such as a library images and/oruser-generated images 650, may be provided as inputs to the dataanalytics module 140 and used to analyze video through the recognitionaspects of the data analytics module 140. This may all happen in realtime or during post time analysis. Again, queries may be entereddepending upon a particular purpose and the system 100, 200, 300, 400,500 and/or 600 can in real time or post time analyze video for thequeried conditions.

The system 100, 200, 300, 400, 500 and/or 600 may be configured toperform three-dimensional face recognition. The system 100, 200, 300,400, 500 and/or 600 may be manually programmed to recognize anindividual or suspect 605 a in an investigation (or prior felon) basedon clothing type, piercings, tattoos, hair style, etc. (other thanfacial recognition which may also be utilized depending on authority ofthe organization (FBI versus local mall security)). An image of asuspect 705 a may be scanned into the data analytics module 140 anditems such as piercings, tattoos, hairstyle, logos, and headgear may beflagged and uploaded into the image database for analyzing later in realtime or post time analysis. For example, if a thief 605 a robs aconvenient store and his/her facial image is captured onto one or morecameras 610, not only may his/her image be uploaded to all the storecameras 610, but other identifying information or characteristics ortraits 615 as well, e.g., hair style, tattoos, piercings, jewelry,clothing logos, etc. If the thief 605 a enters the store again, an alertwill automatically be sent to security. Even if the system recognizes asimilar tattoo or piercing pattern or logo 615 on a different personthat person may be deemed a suspect for questioning by authorities.Again, this goes beyond mere facial recognition wherein that so-calleddifferent person would not necessarily be flagged and tracked.

The system 100, 200, 300, 400, 500 and/or 600 may also generate alibrary of individuals and/or patrons that regularly frequent or visit aparticular location thereby eliminating the need to track theseparticular individuals and allowing the system 100, 200, 300, 400, 500and/or 600 to focus on identification and tracking of individuals notpreviously identified and saved in the library. The library of patrons(not shown) may also link to a Point-of-Sale (POS) system therebyvalidating that the individuals identified and stored in the library areregular patrons.

As best shown in FIG. 7, another analytical recognition system 700 isshown with the data analytics module 140 being utilized with a chain ofstores, a mall or a series of stores 750 in a town or community. Thecommunity of stores or a chain of stores 750 a-750 e is able to sharevideo images 724, mobile communication device data, and/or otheridentifying information of characteristic or trait of known felons 705across a network of cameras 710 a-710 e utilizing the same the dataanalytics module 140 (or uploading the image 724 and identifyinginformation on an individual store analytical system 740 a-740 e). Theselocal storeowners or store chains 750 a-750 e may be able to preventadditional losses by flagging and tracking known individuals 705 ofparticular interest (based on a prior characteristics or traits asdescribed above and/or identifying information entered into an imageand/or information database) once he/she 705 enters a store, e.g., store750 a. Alerts may be sent to local authorities of these individuals (orgroup of individuals) and they may be tracked throughout an entirenetwork of cameras 710 a-710 e, including parking lot cameras, streetcameras, etc. along a community network. Once an individual 705 isflagged and there is an alert, other information may be capturedrelating to car, car type, car route, accomplices, etc. Further, allcameras 710 a-710 e and/or antennae 150 a-150 e in the system 700 may bealerted to flag and track the individual 705 and accomplice in real timeand/or for post time analysis.

The various described systems 100, 200, 300, 400, 500, 600, 700 and 800may also be utilized to identify individuals with a “no contact”condition. For example, a building resident may have a restraining orderissued by a court that prevents a particular individual from beingwithin a certain proximity. The image, e.g., 724, may be entered intothe system e.g., system 700 and the data analytics module 140 mayidentify the individual 705 and provide notice and/or documentation tothe building resident and/or the authorities. Similarly, agovernment-generated database 720 may be provided to the system 700wherein the database 720 includes a library of images 724 of individuals705 identified in a particular legally mandated registration program.

A community may choose to set up a community network of cameras 710a-710 e for this purpose. New owners of local businesses may opt toupload a particular felon's image 724 for analyzing (i.e., for localalerts) on a per occurrence subscription (e.g., dollar amount), e.g., aparticularly violent felon's image 724 and additional identifyinginformation may be of particular interest to an entire community foruploading on all networked cameras 710 a-710 e (or even standalonesystems) while a small time shoplifter may not be of interest.

The data analytics module 140 may also utilize gait as an indicator ofan individual or suspect, limp, shuffle, head angle, stride, hand sway,hand gestures, etc. A person's gait is as individual as a fingerprintand may be used to identify disguised felons. Many variables contributeto an individual gait and this information can be uploaded to the dataanalytics module 140 (e.g., walk velocity, step frequency, angle betweenfeet, hand/arm position, hand/arm sway, limp, shuffle, etc.)

The data analytics module 140 may also be configured to alert securityif a certain number of known images or events or habits occurs within aparticular time period (e.g., self patting of particular area(s) Xnumber of times within preset time period, patting or clenching of aknown area for carrying or hiding weapons, nervous twitching or rapidhead turning X number of times, leering around corners, looking at videocameras X number of times within a preset time period, etc. The dataanalytics module 140 may be configured to alert security or provideinformation to a user based on an abnormal or excessive habit or eventoccurring within a preset time limit or a combination of any of theevents occurring within a preset time period. For example, a personwalking through a store with hand clenched atop pants with rapid headturning may trigger an alert or abnormal situation. In another example,security is flagged or highlighted (or otherwise identified in a certainarea(s) by the system 100, 200, 300, 400, 500, 600, 700 and/or 800) anda suspect leering in that direction repeatedly or repeatedly turninghis/her head in that direction may trigger an alert or abnormalsituation. In another example, an individual shopping and/or lingeringin an area of a store that is typically an area with short dwell times(e.g., dwell time for a male in the make-up area is typically shortwhile dwell-time for a female is typically, if not always, long).

As mentioned above, the analytical recognition system 100, 200, 300,400, 500, 600, 700 and/or 800 of the present disclosure may be utilizedto determine gun or weapon detection by virtue of pre-programmingcertain habitual behavior into the data analytics module 140 andanalyzing the same (in real time and/or post time). For example, aperson repeatedly grabbing a certain area known to house weapons andwalking with a certain gait (e.g., walking with a limp might indicatecarrying a shotgun) may be an indication of the person carrying aweapon. This information may be analyzed with other identifyinginformation or indicia (e.g., tattoo, gang color, gang symbol, logo,etc.) to trigger an alert or abnormal situation. In another example, anindividual is wearing a trench coat when it is not raining or on a sunnyday in the Summer and leering or head turning. In this instance, thedata analytics module 140 would need some sort of sensory inputregarding rain or temperature or sunshine (light) and/or a connection toa system that provides such data. The time of day might also become atrigger or additional event that is preprogrammed into the dataanalytics module 140 analytics to heighten “awareness” of the dataanalytics module 140 when triggering alerts, e.g., very late at night orpast midnight when more robberies tend to occur.

In other examples, the data analytics module 140 may allow the securitypersonal to query the analytical recognition system 100, 200, 300, 400,500, 600, 700 and/or 800 in real time or post time: “How many peoplewith red baseball caps have entered the store or area within the deltaof 5-10 minutes?”; “How many people are converging on the centralfountain at this time or over this delta time?”; “How many people havelingered at the fountain for delta minutes?” Other queries may includeinstructions: “Scan and recognize/flag/follow/track people wearing longpants or winter coats (when 90° degree Summer day)”; “Scan andrecognize/flag/follow/track people wearing red hats”; “Scan andrecognize/flag/follow/track people carrying multiple backpacks”; “Scanand recognize/flag/follow/track people who have left objects (e.g.,backpacks unattended)—track person over system, multiple systems, flaglocation of object, etc.”; “Scan and recognize/flag/follow/track peopleloitering near sensitive areas, leaving objects near sensitiveareas—track person over system, multiple systems, flag location; and/or“Alert if a delta number of unattended objects left at preset time orover preset time”.

In another example, the data analytics module 140 may be configured toperform real-time video processing and analysis to determine a crowdparameter (e.g., a real-time crowd count or a real-time crowd densityestimation) by automated processing of the video sequence of a physicalspace. The video analytic module 140 may include one or more algorithmsconfigured to determine a rate of change in the crowd parameter. Therate of change in the crowd parameter may be indicative of crowdconvergence or crowd divergence.

When the rate of change in the crowd parameter exceeds a predeterminedthreshold, the data analytics module 140 automatically issues an alert.For example, when the rate of change in the crowd parameter isindicative of crowd convergence, the data analytics module 140 may alertsecurity of a potential flash mob or gang robbery. The data analyticsmodule 140 may be configured to utilize vector analysis and/or image anddata vector analysis algorithms and/or machine learning algorithms toassess one or more convergence patterns.

The data analytics module 140 may be connected to an array of cameras510 a-510 g organized in a network, and upon issuance of an alert eachcamera in the network may be utilized to track one or more objects orindividuals (e.g., patrons 504 a-5041 shown in FIG. 5). When the rate ofchange in the crowd parameter is indicative of crowd divergence, thedata analytics module 140 may alert security of a potentially hazardoussituation or criminal activity.

FIG. 8 is a screen-shot of the investigation module 800 displaying aninvestigation generated in accordance of an embodiment of thisdisclosure. Investigation module 800 is configured to generate and storeinformation required to document a particular user behavior.

Additionally, the investigation module 800 may be configured to receiveinvestigation criteria inputted by a user or a machine, and mine videodata, mobile communication device data, and/or profile data based on thecriteria. In one example, the investigation criteria may include a timeframe, and the investigation module 800 may be configured to generate alist of people whose presence was detected on a premises during thattime frame. The investigation module 800 may also be configured todetermine a current location of a person by detecting a signal thatmatches a mobile communication device data previously obtained atanother location.

In some example embodiments herein, the investigation module 800 isconfigured to receive report criteria inputted by a user requesting aparticular type of report; mine video data, mobile communication devicedata, and/or profile data obtained from video cameras 110 and/orantennae 150, and/or sales data (e.g., obtained from a sales database);and generate a report based on the mining of the data. The report mayinclude, for instance, a computed sales close rate corresponding to anitem of merchandise, a merchandise category, an aisle at the premises, ashelf at the premises, and/or a predetermined location at the premises.

Investigation module 800 includes a viewing window 810 with upper andlower viewing control bars 812 a, 812 b, a text entry window 814, atimeline window 820, a camera window 830, a search window 840, aplayback option window 850, a clip option window 860 and a filemaintenance window 870.

Investigations automatically generated by the system 100 are populatedwith information related to the particular user behavior as discussedhereinabove. For example, the investigation illustrated in FIG. 8includes a first video sequence 820 a and a second video sequence 820 bwherein the first video sequence 820 a is from the downstairs camera andthe second video sequence 820 b is from a camera located at theelevator. In one embodiment, the first video sequence 820 a was providedthrough an automatically generated investigation and the automaticallygenerated investigation was provided to the loss prevention individual.

The first video sequence 820 a is selected in the timeline window 820and played in the viewing window 810. To further this explanation andfor example, suppose the loss prevention individual, upon viewing thefirst video sequence 820 a on a PDA, observes an individual removing acompany laptop computer from the downstairs area. In generating theinvestigation, the system identified this user behavior as a particularuser behavior and upon review, the loss prevention individual concursthat the automatically generated investigation has merit and escalatedthe automatically generated investigation to a theft investigation.

The automatically generated investigation was provided to the lossprevention individual in near real-time, therefore, the individual nowin possession of the company laptop may have only taken a few steps fromwhere the laptop was removed.

Using the PDA, the loss prevention individual furthers the automaticallygenerated investigation (now a theft investigation) by observingtemporally related video and video data available through theinvestigation module 800 on a PDA.

The search window 840 may automatically select a timeframe related tothe investigation. The timeline may be manually controlled through thePDA.

Video and/or video data from one or more cameras listed in the camerawindow 830 may be selected for viewing in the viewing window 810. Aplurality of video streams from individual cameras (see FIG. 1) may beviewed simultaneously by selecting an alternative viewing screen fromthe upper viewing control bar 812 a.

The lower viewing control bar 812 b allows viewing video in the viewingwindow 810 in real time or other selected speeds. The investigationmodule 800 provides an investigation playback speed wherein the playbackspeed is automatically calculated to replay video at a playback speedthat requires the loss prevention individual to view every frame of thevideo sequence. Video is recorded and saved at speeds that exceed theability of a human eye to detect slight movements. Additionally, theplayback device may also have hardware and/or software limitations thatprevent the playback device from displaying every frame of video. Assuch, playback of video at “real time” results in missing individualframes of video due to human viewing limitations and/or computer displaylimitations. The investigation playback speed is calculated based on thehuman viewing limitations and the display limitations of the particulardevice being used to view the investigation module 800.

Playback option window 850 allows the video sequence and/or the videofrom each camera to be played in various modes. The all frame displaymode plays video at the calculated investigation playback speed whereinall frames are displayed and viewable during playback. The motion onlydisplay mode provides video sequences of the video that include motion.The trigger only display mode includes video sequences temporallyrelated to a trigger.

Triggers include internal triggers and/or external triggers. Internaltriggers include motion triggers defined by a user and determined by thedata analytics module 140, POS triggers generated by the POS module 141and analytics events defined by a tripline and/or a zone (e.g., enteringand/or exiting a zone) and determined by the data analytics module 140.External triggers are generated by external hardware devices connecteddirectly or indirectly to the computer 120.

At any point of the investigation the loss prevention individual mayassign a video sequence to the timeline. For example, in FIG. 8 the lossprevention individual has added the second video sequence 820 b to theinvestigation. The second video sequence 820 b includes video providedfrom a camera positioned at the elevator and stairway. To further thescenario described hereinabove, suppose the loss prevention individualidentified a suspect carrying the laptop and approaching an elevatordisplayed in the second video sequence 820 b. In furtherance of thetheft investigation, the loss prevention individual included the secondvideo sequence 820 b in the timeline of the investigation.

Loss prevention individual may select various options from the videoclip window 860. The timeline window 820 may be populated with videoclips including one or more video sequences, a still image generatedfrom the video or text entered through the text entry window 814. Avideo clip may include a continuous video sequence. Alternatively, avideo clip using the playback option of motion only (selected in theplayback option window 850) includes a plurality of video sequences thatinclude motion (e.g., non-motion portions of the video are excluded fromthe video clip). Finally, the loss prevention individual may capture astill image of a frame to capture an individual feature such as a facialimage, a particular tool or object used during the theft, or any othersignificant image that may be required to further the investigation.

Finally, since the investigation is generated in near real-time, theloss prevention individual, upon confirmation of a theft currently inprogress, is able to notify security and apprehend the thief before theyare able to leave the premises.

Reference will now be made to FIG. 9, which shows a flowchart of ananalytical recognition method 900 according to an example embodiment ofthe present disclosure. In accordance with an example embodiment herein,the method 900 may be employed to populate, based at least in part onvideo data and/or mobile communication device data captured by one ormore video cameras 110 and/or one or more antennae 150, respectively, adatabase with data that may be useful for security purposes,investigative purposes, marketing purposes and/or the like.

At block 902, as described above in further detail with respect to FIG.1, video data is captured by one or more video cameras 110 and mobilecommunication device data is captured by one or more one or moreantennae 150. The video data, in one example, includes images of one ormore people who were at one time located within view of the one or morecameras 110, and the mobile communication device data includes datacaptured from one or more mobile communication devices 440 that were atone time located within wireless communication range of the one or moreantennae 150. Each item of the mobile communication device data may beassociated with a respective mobile communication device that wascarried by a respective one of the people of whom one or more of theimages were captured.

At block 904, the items of video data captured at block 902 arecorrelated to respective items of mobile communication device datacaptured at block 902 based on one or more keys included within thecaptured video data and mobile communication device data. In oneexample, based on the correlating at block 904, respective profiles aregenerated of people associated with one or more respective items of thevideo data and/or mobile communication device data. Each profile mayhave profile data including any one or a combination of the capturedvideo data, the captured mobile communication data, and/or additionaldata.

The one or more keys utilized at block 904 can include any one or acombination of attributes included within an item of video data ormobile communication device data, which can be used to identify the itemof video data or mobile communication device data and/or to correlatemultiple items of video data and/or mobile communication device data asbeing related to one another. For instance, a facial image of a personincluded in an item of video data captured at a first date and time maybe used as a key by which that item of video data can be correlated withanother item of video data captured at a second date and time. Asanother example, an IP address included in an item of mobilecommunication data captured at a first location (e.g., by a first videocamera 110 or antenna 150) may be used as a key by which that item ofmobile communication data can be correlated with another item of mobilecommunication data captured at a second location (e.g., by a secondvideo camera 110 or antenna 150). Example types of keys include, withoutlimitation, an identifier of a collector/beacon (e.g., a uniqueidentifier of the particular video camera 110 or antenna 150 thatcaptured the item of video data or mobile communication device data), amobile communication device address (e.g., a Wi-Fi address, a Bluetoothaddress, a NFC address, an RFID address, a cellular address, a GPSdevice address, a MAC address, an international mobile subscriberidentity (IMSI) identifier, and/or any other suitable address oridentifier) included in the mobile communication device data capturedfrom a mobile device 440, a signal strength of mobile communicationdevice data captured from a mobile device 440, a date on which an itemof video data or mobile communication device data is captured, a time atwhich an item of video data or mobile communication device data iscaptured, a location at which an item of video data or mobilecommunication device data is captured, a medium (e.g., a particularwireless communication protocol) by which an item of mobilecommunication device data is captured, and/or the like. The keysutilized at block 904, as well as any other data captured, generated, orotherwise resulting from the steps of method 900, can be encrypted usingone or more suitable encryption algorithms in a known manner.

At block 906, the profile data generated at block 904 is normalizedbased on one or more normalization criteria. For example, the profiledata can be normalized based on (1) the number of visits that peoplehave made to a particular location (e.g., a store location having one ormore cameras 110 and antennae 150 by which video data and/or mobilecommunication data was captured at block 902), (2) durations of time forwhich people have remained at a particular location, and/or (3) afrequency or repetition rate of visits that people have made to aparticular location. This may be useful to identify repeat customers, acriminal casing a store before committing a robbery, and/or the like.

At block 908, the profile data generated at block 904 and/or normalizedat block 906, is updated to include one or more attributes generated forrespective profiles based on data aggregated for each profile/personover time. Examples of such attributes may include whether a person is areturn shopper, a first time shopper, an employee, a passerby (e.g., asdetermined by a very brief duration of stay at a location, for example,where a person merely walks past a store but within range of a camera110 and/or antenna 150 located at the store), whether the person shopsat other locations of a particular retailer at which video data and/ormobile communication data of the person was captured, whether the personwas engaged by an employee while located at a store, and/or the like.After block 908, the method 900 can return to block 902, so as tocontinually capture video data and/or mobile communication device dataas described above.

As described above, the data captured, generated, or otherwise resultingfrom the various steps of the method 900 can be utilized for securityand/or investigative purposes (e.g., after a robbery at a store), formarketing purposes, and/or the for many other purpose. For instance, thedata can be utilized in one or more front-facing or covert applications(e.g., to generate a virtual lineup for criminal investigative purposes;to enable analysis of sales or marketing data in connection with apredetermined event, such as a holiday shopping season; to compute atrue conversion rate of sales encounters; to analyze customer dwellingstatistics; to generate a heat map based on actual historical sales atsegments within a store; to generate paths taken by a user based on datacaptured from multiple cameras 110 and/or antennae 150; to identifypeople who remain within a store after the closing hours of that store;and/or the like).

As various changes could be made in the above constructions withoutdeparting from the scope of the disclosure, it is intended that allmatter contained in the above description shall be interpreted asillustrative and not in a limiting sense. It will be seen that severalobjects of the disclosure are achieved and other advantageous resultsattained, as defined by the scope of the following claims.

1-20. (canceled)
 21. A video identification and analytical recognitionsystem, comprising: a video camera configured to capture video dataincluding a video frame that includes an image of a person; an antennaconfigured to capture mobile communication device data including anidentifier of a mobile communication device associated with the person;and a processor configured to: correlate the video frame to theidentifier of the mobile communication device associated with theperson; identify an object associated with the person from at least oneof the video frame and the mobile communication device data; and trackthe object identified by the processor using at least one of or acombination of the video data and the mobile communication device data.22. The system according to claim 21, wherein the processor is furtherconfigured to: generate a profile of the person based on a result ofcorrelation of the video frame to the identifier.
 23. The systemaccording to claim 22, wherein the profile includes at least one of anindication of when the video frame was captured or an indication on ofwhen the mobile communication device data was captured.
 24. The systemaccording to claim 22, wherein the profile includes at least one of anindication of a location at which the video data was captured or anindication of a location at which the mobile communication device datawas captured.
 25. The system of claim 21, wherein the antenna includesat least one of a WiFi antenna, a media access control (MAC) antenna, aBluetooth antenna, a cellular antenna, a near field communicationantenna, and a radio frequency identification antenna.
 26. The system ofclaim 22, wherein the processor is further configured to assign theperson to a positive list, an undetermined list, or a negative listbased on any of or a combination of the video data, the mobilecommunication device data, the profile, and a user-inputted criteria.27. The system of claim 26, wherein the processor is further configuredto assign the person to the positive list based on a determination thatany one or a combination of the video data, the mobile communicationdevice data, and the profile corresponds to an employee or to a personon a predetermined list of people.
 28. The system of claim 21, whereinthe antenna is configured to capture the mobile communication devicedata by wirelessly receiving data from a mobile communication devicelocated within a range of the antenna.
 29. The system of claim 22,wherein the processor is configured to classify the person as a newcustomer or a repeat customer at premises based on premises visit datastored in the profile, and add to the profile, or update in the profile,an indicator of whether the person is a new customer or a repeatcustomer at the premises.
 30. The system of claim 22, wherein theprofile includes any one or a combination of the video data, the mobilecommunication device data, temporal data associated with the capturedvideo data or the captured mobile communication device data, andlocation data associated with the captured video data or the capturedmobile communication device data.
 31. The system of claim 30, whereinthe captured video data includes any one or a combination of a capturedstill image and video footage, and the mobile communication device dataincludes any one or a combination of a WiFi identifier, a media accesscontrol (MAC) identifier, a Bluetooth identifier, a cellular identifier,a near field communication identifier, and a radio frequency identifierassociated with the mobile communication device in communication withthe antenna.
 32. The system of claim 30, wherein the temporal dataincludes any one or a combination of a time the video data is capturedand a time the mobile communication device data is captured, and thelocation data includes any one or a combination of a location at whichthe video data is captured and a location at which the mobilecommunication device data is captured.